// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}

//-------------MAIN---------------
thread 'KNIFE' 

:KNIFE_11
wait 0 
if 
Player.Defined($PLAYER_CHAR)
jf @KNIFE_11 
if 
00E1:   player 0 pressed_key 6 
jf @KNIFE_64 
jump @KNIFE_83 

:KNIFE_64
29@ = 0 
Marker.Disable(30@)
jump @KNIFE_11 

:KNIFE_83
31@ = 0 
1@ = 0 

:KNIFE_97
0085: 0@ = 1@ // (int) 
2@ = 0 

:KNIFE_112
if 
056D:   actor 0@ defined 
jf @KNIFE_164 
if and
803C:   not  $PLAYER_ACTOR == 0@ // (int) 
   not Actor.Driving(0@)
   not Actor.Dead(0@)
jf @KNIFE_164 
gosub @KNIFE_816 

:KNIFE_164
0@ += 1 
2@ += 1 
  2@ > 127 
jf @KNIFE_112 
1@ += 256 
  1@ > 35584 
jf @KNIFE_97 
if 
056D:   actor 31@ defined 
jf @KNIFE_349 
if 
803B:   not  29@ == 31@ // (int) 
jf @KNIFE_273 
Marker.Disable(30@)
30@ = Marker.CreateAboveActor(31@)
0085: 29@ = 31@ // (int) 

:KNIFE_273
if 
0AB0:   key_pressed 80
jf @KNIFE_349 
04ED: load_animation "KNIFE" 
04ED: load_animation "YOMI" 

:KNIFE_307
84EE:   not animation "KNIFE" loaded 
84EE:   not animation "YOMI" loaded 
jf @KNIFE_342 
wait 0 
jump @KNIFE_307 

:KNIFE_342
jump @KNIFE_356 

:KNIFE_349
jump @KNIFE_11 

:KNIFE_356
29@ = 0 
Marker.Disable(30@)
068D: get_camera_position_to 0@ 1@ 2@ 
Camera.SetPosition(0@, 1@, 2@, 0.0, 0.0, 0.0)
068E: get_camera_target_point_to 0@ 1@ 2@ 
Camera.PointAt(0@, 1@, 2@, 2)
Actor.SetImmunities($PLAYER_ACTOR, 1, 1, 1, 1, 1)
Actor.LockInCurrentPosition(31@) = True
28@ = Audiostream.Load("CLEO\dragonball\teleport.MP3")
Audiostream.PerformAction(28@, PLAY)
04C4: store_coords_to 0@ 1@ 2@ from_actor 31@ with_offset 0.0 -1.0 0.0 
0972: put_actor $PLAYER_ACTOR at 0@ 1@ 2@ no_offset 
0669: 11@ = attach_particle "tele" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 11@ visible
0669: 12@ = attach_particle "S_JB1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 12@ visible
0669: 13@ = attach_particle "S_GR1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 13@ visible
0669: 14@ = attach_particle "S_GR2" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 14@ visible
0669: 15@ = attach_particle "C_KBE1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 15@ visible
0669: 12@ = attach_particle "S_JB1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 12@ visible
0669: 13@ = attach_particle "S_GR1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 13@ visible
0669: 14@ = attach_particle "S_GR2" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 14@ visible
0669: 15@ = attach_particle "C_KBE1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 15@ visible
0669: 12@ = attach_particle "S_JB1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 12@ visible
0669: 13@ = attach_particle "S_GR1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 13@ visible
0669: 14@ = attach_particle "S_GR2" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 14@ visible
0669: 15@ = attach_particle "C_KBE1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 15@ visible
0669: 12@ = attach_particle "S_JB1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 12@ visible
0669: 13@ = attach_particle "S_GR1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 13@ visible
0669: 14@ = attach_particle "S_GR2" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 14@ visible
0669: 15@ = attach_particle "C_KBE1" to_actor $PLAYER_ACTOR with_offset 0.0 0.0 0.0 type 1
064C: make_particle 15@ visible
0@ = Actor.Angle(31@)
Actor.Angle($PLAYER_ACTOR) = 0@
04C4: store_coords_to 0@ 1@ 2@ from_actor 31@ with_offset 0.0 1.0 0.0 
0668: AS_actor 31@ rotate_and_shoot_at 0@ 1@ 2@ 5000 ms 
Camera.Restore_WithJumpCut
0826: enable_hud 0 
0581: enable_radar 0 
wait 0 

wait 0 
0829: actor 31@ perform_animation  "KO_shot_front" IFP_file "PED" 4.0 time 0 and_dies 
09B8: create_blood_gush_at 0@ 1@ 2@ with_offset 0.0 0.0 3.0 density 500 on_actor 31@ 
wait 0 
Actor.LockInCurrentPosition(31@) = False
Player.CanMove($PLAYER_CHAR) = True
0826: enable_hud 1 
0581: enable_radar 1 
jump @KNIFE_11 

:KNIFE_816
if 
056D:   actor 31@ defined 
jf @KNIFE_1126 
068E: get_camera_target_point_to 3@ 4@ 5@ 
068D: get_camera_position_to 6@ 7@ 8@ 
8@ -= 0.1 
0063: 3@ -= 6@ // (float) 
0063: 4@ -= 7@ // (float) 
0063: 5@ -= 8@ // (float) 
3@ *= 150.0 
4@ *= 150.0 
5@ *= 150.0 
Actor.StorePos($PLAYER_ACTOR, 6@, 7@, 8@)
005B: 3@ += 6@ // (float) 
005B: 4@ += 7@ // (float) 
005B: 5@ += 8@ // (float) 
Actor.StorePos(31@, 9@, 10@, 11@)
050A: 12@ = distance_between_XYZ 3@ 4@ 5@ and_XYZ 9@ 10@ 11@ 
050A: 13@ = distance_between_XYZ 6@ 7@ 8@ and_XYZ 9@ 10@ 11@ 
005B: 12@ += 13@ // (float) 
Actor.StorePos(0@, 9@, 10@, 11@)
050A: 13@ = distance_between_XYZ 3@ 4@ 5@ and_XYZ 9@ 10@ 11@ 
050A: 11@ = distance_between_XYZ 6@ 7@ 8@ and_XYZ 9@ 10@ 11@ 
005B: 13@ += 11@ // (float) 
if 
0025:   12@ > 13@ // (float) 
jf @KNIFE_1119 
0085: 31@ = 0@ // (int) 

:KNIFE_1119
jump @KNIFE_1134 

:KNIFE_1126
0085: 31@ = 0@ // (int) 

:KNIFE_1134
return 
